const OSS = require("ali-oss")
const path = require('path')
const axios = require('axios')

const client = new OSS({
    // yourregion填写Bucket所在地域。以华东1（杭州）为例，Region填写为oss-cn-hangzhou。
    region: "oss-cn-hangzhou",
    // 从环境变量中获取访问凭证。运行本代码示例之前，请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
    accessKeyId: 'LTAI5t9Qy4DoWMh4iNoMk6Wr',
    accessKeySecret: 'C2st0NcWHbYVv7SAUC0gXHtmWytwMl',
    bucket: "wtplugwt"
})
const filepath = path.join(__dirname, 'dist', 'main.bundle.js')
const headers = {
    // 指定Object的存储类型。
    "x-oss-storage-class": "Standard",
    // 指定Object的访问权限。
    "x-oss-object-acl": "public-read",
    // 通过文件URL访问文件时，指定以附件形式下载文件，下载后的文件名称定义为example.txt。
    "Content-Disposition": `attachment; filename="main.js"`,
    // 设置Object的标签，可同时设置多个标签。
    "x-oss-tagging": `FileName=main.js`,
    // 指定PutObject操作时是否覆盖同名目标Object。此处设置为true，表示禁止覆盖同名Object。
    "x-oss-forbid-overwrite": "false"
}
client.put(
    `plugin/content/ev/${new Date().getTime()}/main.js`,
    path.normalize(filepath),
    // 自定义headers
    { headers }
).then(res => {
    console.log('res', res.url)
    if (res.res.status === 200) {
        axios.post('http://doulingyang.cn/api/tools/savePlginOssPath', {
            bg: res.url
        }).then(res => {
            console.log(res.data)
        })
    }
})